import styled from 'styled-components'

export const ItemWrapper = styled.div`
  flex-shrink: 0;
  box-sizing: border-box;
  /* 宽度由外部传入,动态决定 */
  width: ${(props) => props.$itemWidth};
  padding: 8px;

  .inner {
    width: 100%;

    .slider {
      position: relative;
      cursor: pointer;

      &:hover {
        .control {
          display: flex;
        }
      }

      .control {
        position: absolute;
        z-index: 1;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        display: none;
        justify-content: space-between;
        color: #fff;

        .btn {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 83px;
          height: 100%;
          background: linear-gradient(to left, transparent 0%, rgba(0, 0, 0, 0.25) 100%);

          &.right {
            background: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.25) 100%);
          }
        }
      }

      /* 指示器 */
      .indicator {
        position: absolute;
        z-index: 9;
        left: 0;
        right: 0;
        bottom: 10px;
        width: 30%;
        /* 居中 */
        margin: 0 auto;

        .item {
          display: flex;
          justify-content: center;
          align-items: center;
          /* 总共显示 7 个 */
          width: 14.28%;

          .dot {
            width: 6px;
            height: 6px;
            background-color: #fff;
            border-radius: 50%;

            &.active {
              width: 8px;
              height: 8px;
            }
          }
        }
      }
    }
  }

  .cover {
    position: relative;
    box-sizing: border-box;
    /* 注意: 服务器提供的图片默认大小是不一样的 */
    /* 所以这里给 cover 一个 padding-top: 66.66% */
    /* 然后让图片进行绝对定位 */
    /* 66.66% 相对于的是宽度 */
    padding: 66.66% 8px 0;
    border-radius: 3px;
    overflow: hidden;

    img {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }

  .desc {
    margin: 10px 0 5px;
    font-size: 12px;
    font-weight: 700;
    /* 文字颜色由外部传入 */
    color: ${(props) => props.$verifyColor};
  }

  .name {
    font-size: 16px;
    font-weight: 700;

    /* 显示两行 */
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .price {
    margin: 8px 0;
  }

  .bottom {
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: 600;
    color: ${(props) => props.theme.text.primaryColor};

    .count {
      margin: 0 2px 0 4px;
    }
  }
`
